:root {
    --background-color: #2c3e50;
    --border-color: #7591AD;
    --text-color: #34495e;
    --color1: #EC3E27;
    --color2: #fd79a8;
    --color3: #0984e3;
    --color4: #00b894;
    --color5: #fdcb6e;
    --color6: #e056fd;
    --color7: #F97F51;
    --color8: #BDC581;
}

* {
    margin: 0;
    padding: 0;
}

html {
    font-size: 14px;
}

body {
    width: 100vw;
    height: 100vh;
    background-color: var(--background-color);
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'Montserrat', sans-serif, Arial, 'Microsoft Yahei';
    /* 开启3d */
    /* 视距2000px */
    perspective: 2000px;
    transform-style: 3d;
}

.box {
    position: relative;
    width: 100px;
    height: 100px;
    /* background-color: violet; */
    display: flex;
    justify-content: center;
    align-items: center;
    /* 上面开启了视距2000这里不能在开启了
    为什么？不知道，需要进一步学习 */
    /* perspective: 2000px; */
    transform-style: preserve-3d;
    /* 准备定义旋转动画 */
    animation: animate 60s linear infinite;
}

@keyframes animate {
    /* 1.沿Y轴旋转360度 */
    /* 2.沿X轴旋转-10度，让圆环发生倾斜 */
    /* 3.沿Y轴向上移动60px */
    0% {
        transform: translateY(-60px) rotateX(-10deg) rotateY(0deg);
    }
    100% {
        transform: translateY(-60px) rotateX(-10deg) rotateY(360deg);
    }
}

.box div {
    position: absolute;
    border-radius: 10px;
    overflow: hidden;
    /* 旋转基点为中心 */
    transform-origin: center;
    /* 原理： */
    /* Y轴旋转45度*当前编号，8张图片每张45度=360度。 */
    /* 当前照片为转向8个方向 */
    /* Z轴位移600px 照片会向着8个方向分别移动600px
        形成一个圆环
    */
    /* 最后缩小至0.6倍大小 */
    transform: rotateY(calc(45deg * var(--i))) translateZ(600px) scale(.6);
}

.box h1 {
    position: absolute;
    display: block;
    color: #fff;
    width: 1000%;
    text-align: center;
    font-size: 80px;
    animation: animate_h1 60s linear infinite;
}

@keyframes animate_h1 {
    /* 1.沿Y轴逆向旋转360度 */
    0% {
        transform: rotateY(0deg);
    }
    100% {
        transform: rotateY(-360deg);
    }
}

.box:hover {
    /* 鼠标移入时停止动画 */
    animation-play-state: paused;
}

.box:hover h1 {
    /* 文字部分的旋转动画也要停止 */
    animation-play-state: paused;
}